using System.Collections.Generic;
using GGEditor.API;

namespace GGEditor.Core.UI
{
	public interface IWindowManager
	{
		IEnumerable<IWindow> Windows { get; }
		IEnumerable<IWindow> DocumentWindows { get; }
		IEnumerable<IWindow> PadWindows { get; }
		IWindow CreateWindow(WindowParameters wp);
		void DestroyWindow(IWindow window);
		event WindowEventHandler WindowCreated;
		event WindowEventHandler WindowDestroyed;
		event WindowEventHandler WindowActivated;
	}

	public delegate void WindowEventHandler(IWindowManager wm, IWindow window);
}